package com.whf.android.jar.constants;

import androidx.annotation.StringDef;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * http上传类型
 *
 * @author qf
 * @author wang.hai.fang
 * @since 2.5.0
 */
public final class IMediaType {

    /**
     * 所有图片类型
     */
    public static final String MEDIA_IMAGE = "image/*";

    /**
     * 图片 - png
     */
    public static final String MEDIA_PNG = "image/png";

    /**
     * 图片- jpg
     */
    public static final String MEDIA_JPG = "image/jpg";

    /**
     * 文本 - json
     */
    public static final String MEDIA_JSON = "application/json;charset=utf-8";

    /**
     * 文本
     */
    public static final String MEDIA_TEXT = "text/plain";
    public static final String MEDIA_TYPE = "text/x-markdown; charset=utf-8";
    public static final String MEDIA_DATE = "multipart/form-data";

    /**
     * 所有视频类型
     */
    public static final String MEDIA_VIDEO = "video/*";

    /**
     * 视频 - 3gp
     */
    public static final String MEDIA_3GP = "video/3gp";

    /**
     * 视频 - mp4
     */
    public static final String MEDIA_MP4 = "video/mp4";

    /**
     * 所有音频类型
     */
    public static final String MEDIA_AUDIO = "audio/*";

    /**
     * 所有类型类型
     */
    public static final String MEDIA_ALL = "*/*";

    @StringDef({
            MEDIA_IMAGE,
            MEDIA_PNG,
            MEDIA_JPG,
            MEDIA_JSON,
            MEDIA_TEXT,
            MEDIA_TYPE,
            MEDIA_DATE,
            MEDIA_VIDEO,
            MEDIA_3GP,
            MEDIA_MP4,
            MEDIA_AUDIO,
            MEDIA_ALL
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface Type {

    }
}
